1. Field of the Invention
The present invention relates to a robot system having a learning control function, and more specifically, the present invention relates to a robot system having a function to calculate a position and an orientation of a sensor attached to a movable part of the robot.
2. Description of the Related Art
In general, in a robot, a position feedback control, a speed feedback control, and a current feedback control are carried out to control the position and speed of an arm portion which is driven by a servo motor in accordance with commands. However, even if such feedback controls were carried out, there are cases when the arm portion vibrates during operation.
Therefore, conventionally, an acceleration sensor is attached to a movable part of the robot, e.g., a tip of the arm portion, vibration of the arm portion during operation is measured by the acceleration sensor so as to perform a learning control and thereby reduce the vibration (see Japanese Patent No. 4283214).
Specifically, the tip motion of the arm portion is controlled based on a feedback error (i.e., positional deviation) between position command data of the tip of the arm portion given by an external control unit and actual position data given by a position, detector at the servo motor which drives the arm portion. During the movement, the position data of the tip of the arm portion is acquired based on the measurement result of the acceleration sensor attached to the tip of the arm portion, and an amount of correction corresponding to the vibration error is obtained based on the position data and the aforementioned position command data. The positional deviation is corrected taking the amount of correction into account. Note that, the learning control mentioned above refers to a control to reduce the vibration by repeatedly performing a series of processes as mentioned above.
In order to perform the aforementioned learning control, it is necessary to attach the acceleration sensor to the tip of the arm portion and carry out calibration for obtaining the position and orientation of the attached acceleration sensor. With respect to this matter, Japanese Patent Application Laid-open No. 2013-041478 discloses a method for automatically calculating the position and orientation of an acceleration sensor provided at the tip of the arm portion by performing a predetermined operation of a robot.
Specifically, in a robot disclosed in Japanese Patent Application Laid-open No. 2013-041478, an acceleration sensor is attached to the tip of the arm portion, and the tip of the arm portion is translated in each of the X-axis direction and the Y-axis direction of a specific coordinate system, and thereby, the orientation of the acceleration sensor is presumed. Furthermore, the two articulated shafts that are provided on the tip side of the arm portion are rotated, and thereby, the position of the acceleration sensor is presumed.
However, in the robot disclosed in Japanese Patent Application Laid-open No. 2013-041478, as the weight of a tool attached to the tip of the arm portion increases and as the rigidity of the arm portion decreases, a disturbance applied to the acceleration sensor during the predetermined operation of the robot increases. As a result, the position and orientation of the acceleration sensor may not be calculated with high precision.
As the calculation error becomes large, the effect of reducing the vibration by the aforementioned learning control is reduced and the calculation error sometimes results in divergence of vibration. Furthermore, in the invention disclosed in Japanese Patent Application Laid-open No. 2013-041478, after the position and orientation of the acceleration sensor are automatically calculated, it is necessary for an operator to manually confirm whether or not the calculation result is precise.